<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <ul>
        <li>li1</li>
        <li>li2</li>
        <li>li3</li>
    </ul>
    <script>
        // let arr = [1,2,3];
        // let arr2 = [4,5,6];

        // let arr3 = [...arr,...arr2];

        // let arr4 = arr.concat(arr2);

        // console.log(arr3);
        // console.log(arr4);

        // console.log(arr3 === arr4);


        // let obj = {
        //     name:"老王"
        // }
        // let obj2 = {
        //     age:18
        // }

        // let obj3 = {...obj,...obj2};

        // 构造函数 Object.assign 静态方法
        // 实例化对象的方法 - 原型方法
        // 合并对象
        // let obj4 = Object.assign(obj,obj2);

        // console.log(obj3);
        // console.log(obj4);

        // let [a,...arr] = [1,2,3]
        // console.log(arr);

        // 字符串转成数组
        // let [a,...arr] = '这是一段文字';
        // console.log(arr);

        // 什么叫伪数组 - 假数组 - 不能使用数组方法
        // let [...lis] = document.querySelectorAll('li');
        // lis.push(666)
        // console.log(lis);

        // function fn(){
        //     // console.log(arguments);

        //     let [...arr] = arguments

        //     arr.push('888')
        //     console.log(arr);
        // }

        // fn(1,2,3)


        // function fn(a,b,...c){
        //     console.log(a);
        //     console.log(b);
        //     console.log(c);
        // }
    
        // fn(1,2,3,4,5)


        // 函数中的形参 如果是rest参数，不被函数length所计入
        // function fn(a,b,c,...d){

        // }

        // console.log(fn.length);

    </script>
</body>
</html>